The present invention relates generally to the field of forward error protection for data transmission systems and particularly concerns a forward error protection method providing for the recovery of lost multiple byte data packets at a receiving site.
Digitally encoded data is presently being transmitted through a variety of mediums for servicing diverse end users. For example, teletext is a well known one-way medium for transmitting digital information along with a normal television signal. The data is broken up into packets each typically comprising 32 data bytes with each packet being encoded onto an individual television line normally in the vertical blanking interval of the signal. At the receiving site, this packeted information is grouped together and decoded to form pages which may be selected by a subscriber for display on his television receiver. Other data delivery services use similar packeted data transmission techniques but the received and decoded information may not be suitable for display by a television receiver. Instead, this information may be delivered to a printer or other display device such as a terminal or home computer. In such data services, the receiving equipment is normally programmed to automatically acquire the desired data in an unattended manner rather than effecting data acquisition in response to specific subscriber inputs as in the case of conventional teletext systems.
In view of the foregoing, it will be appreciated that if there are errors in a received page of a conventional video teletext service, the subscriber can either simply ignore the errors or request that the data be re-acquired. However, in the case of unattended data delivery services, the errors will have to be to1erated unless some mechanism is provided in the decoder to detect and correct the erroneous information.
Odd parity is one known technique for detecting errors in transmitted data. ln particular, each byte of the transmitted information comprises seven bits of data and one parity bit, the parity bit being generated by Exclusive-Oring the seven data bits and complementing the result. Thus, a logical 1 parity bit is generated if the byte comprises an even number of logical 1 data bits and a logical 0 parity bit is generated if the byte comprises an odd number of logical 1 data bits. By comparing each parity bit with its associated data bits the decoder can therefore determine whether a received data byte has an odd number of data bits in error, i.e., an odd bit error. While such errors can be detected using this method, there is no facility provided for correcting the error.
A further known level of forward error protection comprises the generation of a so-called longitudinal parity byte in respect of a number of data bytes. Generally, a single longitudinal parity byte is generated and transmitted for each data packet. The longitudinal parity byte, which provides a facility for recovering one incorrectly received data byte per packet, is formed by Exclusive-Oring the corresponding bits of each data byte in the packet and complementing the result. This technique is similar to the way a parity bit is formed for each byte, but, in this case, the Exclusive-Oring is carried out on a byte level rather than on a bit level. One limitation of this technique is that when a complete packet is lost in transmission, contrasted with the loss of a single byte, there is no way to recover the lost information.